# -*- coding: utf-8 -*-
# @File  : thread调用外部函数2.py
# @Author: zbh
# @Date  : 2025/2/27_14:56

import time
import threading
from test_python_basics import denglu

def work_func(varxx): # 线程函数, 线程要执行的内容在这里
    time.sleep(2)
    print(f"线程名：{threading.currentThread().name},参数值是：{varxx}")

class MyThread(threading.Thread):
    def __init__(self,target,args): # 初始化线程, 重写父类的__init__方法
        super().__init__() # 调用父类的__init__方法
        self.target = target
        self.args = args
    def run(self): # 重写父类的run方法, 线程的入口点，线程要执行的内容在这里
        self.target(*self.args) # 调用线程函数

def main():
    print(f"主线程开始时间：{time.strftime('%Y-%m-%d %H:%M:%S')}")
    thread_list = []
    for i in range(10):
        t = MyThread(denglu.login,args=(1,)) # 创建线程对象, target是函数名，args是函数的参数
        # t = threading.Thread(target=denglu.login) # 创建线程对象, target是函数名，args是函数的参数
        thread_list.append(t) # 将线程对象添加到列表中
        t.start() # 启动线程, 线程的入口点，线程要执行的内容在这里
    for t in thread_list:
        t.join() # 等待线程结束,确保主线程会等待所有子线程执行完毕后再继续执行后续代码
    print(f"主线程结束时间：{time.strftime('%Y-%m-%d %H:%M:%S')}")


if __name__ =="__main__":  # 程序入口
    main()




